The present invention relates in general to communication systems, and is particularly directed to a signal analysis and manipulation subsystem, that is configured to be interfaced with various signal transport paths of input/output devices of a telephone operator""s (personal computer-based) workstation. The inventive subsystem is operative to intercept, analyze and selectively modify signals being distributed among components of the workstation, including those that may prompt an interactive response from the operator, so as to alleviate the workload of the operator, and improve the efficiency and response time of the operator position. Advantageously, the inventive subsystem is operative to automate various functions of the operator position, including initiating the generation of personalized audio messages, without requiring knowledge of the communication protocol of a telecommunication switch to which the operator""s workstation is coupled.
Since the advent of the personal computer (PC), the users of many industrial and utility systems have sought to reduce the complexity and vendor-dependency of conventional xe2x80x98customizedxe2x80x99 signal processing schemes, by replacing such schemes with xe2x80x98openxe2x80x99 architectures that are capable of being interfaced with a variety of input/output units, signal communication paths, auxiliary function processors (external to a user""s workstation) and databases, and thereby provide increased flexibility and performance. Unfortunately, this objective is often thwarted by the equipment vendors who place restrictions on the contents and/or use of their (proprietary) communication protocols. In addition, once they have been configured to accommodate a switch vendor""s communication control software, personal computer-based operator positions often have very limited, if any, auxiliary card slot availability.
Moreover, manufacturers of telecommunication switches, such as those installable in the central office of a telephone service provider, have effectively prevented customers from either developing their own or obtaining third party vendor upgrades to add auxiliary functionality, by either refusing to reveal or requiring a license to access or use their proprietary signaling protocols. Often, the financial burden imposed on the licensee is so financially egregious that the customer is either forced to use a (less than desirable) product offered by the licensor (if one is even available), or to simply forego the improvement, which leaves the end userxe2x80x94the telephone subscriberxe2x80x94without the benefit of the add-on or upgrade.
Indeed, the lack of or restricted access to signaling protocols by telecommunication switch manufacturers has effectively frustrated telephone service providers from furnishing a variety of improved customer information services, that could otherwise be provided, by automated access to information (e.g., directory assistance) databases available from third party sources. On the one hand, an automated data base search and retrieval system enables the telephone service provider to reduce access time by either eliminating or decreasing the amount of operator interaction with a calling subscriber. On the other hand, automated access to the data base ostensibly requires the ability to understand and thereby make practical use of the switch communication protocolsxe2x80x94something the switch manufacturers are effectively unwilling to share. It may be inferred that this refusal is due to the fact that one or more switch vendors have or are in the process of developing their own databases, and they apparently wish to control and monopolize, to the extent possible, sales and use of such auxiliary resources.
In accordance with the present invention, this communication protocol access problem is effectively solved by means of an auxiliary signal processing interface that is ported to readily accessible signal transport paths of input/output devices of a telephone operator""s personal computer-based workstation. This auxiliary signal processing interface is operative to intercept, analyze and selectively modify signals that are transported between input/output components and the data processing unit of the workstation. Because it is coupled to each of the operator""s display, keyboard and an auxiliary audio messaging unit, the auxiliary processing interface of the invention has the ability to simulate input/output operations that would normally be manually conducted by the operator. As the operator is not required to, and normally does not, have knowledge of the telecommunication switch""s proprietary communication signaling protocol, neither does the auxiliary processing interface. The operation of the interface is instead based upon what the operator would normally see and do.
A typical telephone operator position in which the auxiliary signal processing interface of the present invention may be installed comprises a computer based workstation, having a data processing unit, and one or more input/output devices, such as a mouse, keyboard, hand-held wand, video display device and the like. The data processing unit may include an audio path/device connected to an operator""s headset, and a digital communication port connected to a central office telecommunication switch, whose associated communication protocols is not readily available from the switch manufacturer.
The auxiliary signal processing interface has a video port coupled to the display monitor""s communication cable, so that video display control signals produced by the data processing unit for generating alpha-numeric text, mnemonics, icons and the like on the operator""s video monitor may be read directly by the auxiliary signal processing interface. It also has a keyboard port for selectively buffering, modifying and passing keyboard signals to the data processing unit.
A video and keyboard signal processing interface circuit, to which video and keyboard ports are coupled, processes signals representative of the contents of video information displayed on the operator""s workstation video monitor and signals that are representative of the operation keys of the workstation keyboard, and controllably initiates the generation of a synthesized voice message by an auxiliary audio messaging unit.
The auxiliary audio messaging unit, which may be installed either internally or externally of the interface, has an audio port coupled to the operator""s headset to an audio port of the data processing unit. The auxiliary audio messaging unit is controllably operative to output to a calling party one or more synthesized voice messages or phrases, that are xe2x80x98personalizedxe2x80x99 in the voice of the operator serving at the operator position, in accordance with control signals supplied to its control port.
The auxiliary signal processing interface further includes a digital communications port which is coupled via a digital communication path to an ancillary data base such as a telephone subscriber information data base, from which telephone subscriber information, such as directory assistance telephone subscriber information, may be retrieved for delivery to a calling party.
The video and keyboard signal processing interface circuit comprises a video signal processing section and a keyboard signal processing section, each of which is coupled to an operator emulation control processor. The video signal processing section is coupled to the interface circuit""s video input port and has a video trigger output port coupled to a video signal input port of the operator emulation control processor. The keyboard signal processing section is coupled to the interface""s keyboard port and has a keyboard trigger signal port coupled to a keyboard signal input port of the operator emulation control processor.
A further keystroke transmission control link is coupled between the operator emulation processor and the keyboard signal processing unit and conveys keyboard control signals from the keyboard signal processing section that are used to selectively control the transmission of invoked keystroke signals to the data processing unit, in accordance with analysis of keystroke and video frame data carried out by the operator emulation processor. The processor is operative to couple control signals to the auxiliary audio messaging unit in accordance with the processing of signals representative of the contents of video information displayed on the operator""s workstation video monitor, and signals representative of the operation of keys of the workstation keyboard.
The video signal processing section includes an analog-to-digital converter and a video sync pulse detector circuit, that are coupled to receive video signals representative of the sequential scanning of the respective pixels of the video monitor of the operator""s workstation. Digitized video (pixel) data is supplied to a video frame memory, the contents of which are coupled to a video signal analysis microprocessor, which is operative to analyze the contents of a captured frame of video data, as it is displayed to the operator by the workstation""s video display.
The video analysis routine executed by the video signal analysis processor is based upon a priori knowledge of various messages/prompts that are displayable by the workstation""s monitor, and in response to which the operator emulation control processor initiates one or more operations that automate manual operations that the operator would normally interactively execute. When a frame of displayed data is captured, the video signal processor examines all or any selected portion of the video information displayed to the operator, so as to facilitate the ability of operator emulation control processor to automate the operator""s response based upon this analysis. The video analysis carried out by processor is preferably conducted by the execution of a video pattern recognition algorithm. Such an algorithm may comprise, but is not limited to, an optical character recognition algorithm for recognizing or detecting pixel pattern characteristics, icons or other video information, by comparing digitized video data stored in memory with one or more data templates associated with prescribed operator position actions. The results of the video pattern recognition routine are then forwarded to the operator emulation control processor.
For the case of a programmable keyboard, a first section of the keyboard cable is coupled to a common terminal of a first relay controlled switch and via an opto-coupler to a keyboard signal microprocessor. A second section of the keyboard cable from the data processing unit is coupled to a common terminal of a second relay controlled switch and via a buffer amplifier and an opto-coupler to the keyboard microprocessor. In the default or passive mode of the relay controlled switches, keystroke signals from the operator""s keyboard are passed directly to the data processing unit of the workstation. In the active mode, the relay winding is driven from the keyboard microprocessor to place places the microprocessor in a communication path between the keyboard and the data processing unit. In this active mode, the microprocessor is able to reprogram the keys of the keyboard or to modify or control keystroke signals supplied to the data processing unit.
In the course of operation, a response initiated by an operator will be dependent upon digits dialed by an accessing party. In the case of an xe2x80x9c0+xe2x80x9d toll call, for example, a greeting phrase spoken by the operator will typically be different from the phrase given for another type of call. Since the call type indication is customarily displayed to the operator at a prescribed spatial region of the graphics user interface displayed by the workstation display monitor, the video signal analysis (pattern recognition) routine need only analyze the contents of that portion of the frame memory associated with the displayed spatial region of interest.
Should it be necessary that a call directed to one operator position be forwarded to another workstation, the intercepting workstation operator must normally become an interactive participant in the call forwarding processxe2x80x94first, by reading the displayed call information displayed, and then keying-in that information into the workstation""s data processing unit. Not only is additional time involved, but there is potential for human error in reading and entering the displayed information. The ability of the interface of the invention to read the displayed video information allows operator actions that are dependent upon the contents of the displayed information to be automated and without the introduction of errors into the process.
The video analysis processor generates an output code representative of its analysis of the captured frame of video data, and forwards this information to the operator emulation control processor, which then processes this video analysis information and any keystroke information supplied by the operator, for the purpose of emulating the operator""s response. The emulated response may include the artificial invoking of one or more keystroke-representative signals to the workstation""s data processing unit or the generation of a prescribed vocalized message by the auxiliary audio messaging unit.
Where the automated operator response includes invoking one or more keystrokes, the operator emulation processor couples output signals to the keyboard signal processing unit, to selectively control the transmission of invoked keystroke signals to the data processing unit, in accordance with the analysis of keystroke and video frame data carried out by the operator emulation processor. Where the response is to invoke the generation of a prescribed personalized phrase by auxiliary audio messaging unit, the emulation control processor couples an output signal to the control port of the auxiliary audio messaging unit, so that the selected greeting phrase will be synthetically vocalized to the calling party.
The ability of the auxiliary signal processing interface to control the coupling of keystrokes from the operator""s keyboard to the data processing unit is particularly useful when a call is released, as it reduces operator workload and efficiently handles release of the call. Normal release of the call may be initiated by the operator depressing a call release key on the workstation keyboard. Prior to releasing the call, the operator may either personally speak a xe2x80x9cthank youxe2x80x9d type phrase to the customer, or manually trigger the auxiliary audio messaging unit to synthetically vocalize the phrase. When the operator has either finished speaking or has listened to the completion of the voicing of the phrase by the auxiliary audio messaging unit, the operator then hits the release key on the workstation keyboard, releasing the call. Automatic release may occur should the operator desire to reject calls from a certain source as determined by on-screen indication of calling number, trunk number, calling location or incoming local phone number, for example.
The interface circuit of the present invention enables a release operation that employs a synthesized message generated by the auxiliary audio messaging unit to be efficiently executed by the depression of only the release key. Alternatively, a totally automated release operation in which a message is synthesized by the auxiliary audio messaging unit may be executed without any operator intervention.
Upon release of a call, since keystrokes from the keyboard are intercepted by the keyboard signal processor, the processor has the ability to controllably delay and modify the contents of the keystrokes. When the release key is invoked, the operator emulation processor triggers the operation of the auxiliary messaging unit to vocalize the release phrase, and causes the keyboard processor to temporarily buffer the release keystroke signal, until it sees a message termination signal sent from the messaging unit upon completion of the phrase. Once the message termination signal has been detected by the operator emulation processor, it signals the keyboard processor to pass the buffered xe2x80x98releasexe2x80x99 key signal to the data processing unit, so that the call may be released by the switch.
A fully automated release operation may be initiated in response to a change in state of the incoming call present information displayed by the workstation monitor. When the call information disappears, the video pattern recognition routine executed by the video processor signals the operator emulation processor, indicating that the call has been dropped. In response to this recognition, the operator emulation processor signals the keyboard signal processor to generate a pseudo keystroke, which is then transmitted to the workstation processing unit, so that the call may be released by the switch.